#include<iostream>
#include <stdio.h>
#include<stdlib.h>
#include<cmath>
#include<string.h>
#include<algorithm>
#include <time.h>
#define MAX_ERR (1.0E-10)
using namespace std;
double x[51];
double y[51];

int  t , n;
double res;


void init(){
    int i;
    srand(time(NULL));
    for(i=0;i<n;i++){
      cin>>x[i]>>y[i];
    }
}

double solve()
{
    double u,v,S;
    double A=0,B=0,C=0;
    double pdu=0,pdv=0;int step=0;
    int i;double err;double pS=100;
    u=v=0;
    for(i=0;i<n;i++){
u+=x[i];
v+=y[i];
    }
    u/=10;v/=10;
    do{

double du,dv;
double fu=0,fv=0;
S=0;
for(i=0;i<n;i++){
    double dx=u-x[i];
    double dy=v-y[i];
    double s=dx*dx+dy*dy;
    double ss=sqrt(s);
    if(ss<=MAX_ERR)continue;
    s*=ss;
    A+=dy*dy/s;
    B+=-dx*dy/s;
    C+=dx*dx/s;
    S+=ss;
    fu+=dx/ss;fv+=dy/ss;
}
du=(C*fu-B*fv)/(A*C-B*B);dv=(-B*fu+A*fv)/(A*C-B*B);
err=du*du+dv*dv;
step++;
//fprintf(stderr,"Step %d, Sum=%f, u=%f,v=%f,fu=%f,fv=%f,du=%f,dv=%f,Err^2=%f,A=%f,B=%f,C=%f,det=%f\n",step,S,u,v,fu,fv,du,dv,err,A,B,C,A*C-B*B);
u-=du;v-=dv;
pdu=du,pdv=dv;
if(step>=1000000)break;
pS=S;
    }while(err>MAX_ERR*MAX_ERR);
    return  (-B/(2*A));
}


int main()
{
   
      cin>>t;
    for(int i=1;i<=t;i++ )
    {       
       cin>>n; 
       init();
       printf("Case #%d: %.6f",i,solve() );
       }
    system("pause") ;
    return 0;
}
